﻿using CRM.Admin.Contracts.Dto.Customer;
using CRM.Admin.Contracts.Model.Customer;
using KingsSharp.Common.Data;
using KingsSharp.Core;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CRM.Admin.Contracts.Contract.Customer
{
    /// <summary>
    /// 推广计划
    /// </summary>
    public interface IPromotionPlanService : IDependency
    {
        /// <summary>
        /// 推广计划集合
        /// </summary>
        IQueryable<PromotionPlan> PromotionPlans { get; }

        /// <summary>
        /// 新增 推广计划
        /// </summary>
        /// <param name="dtos">推广计划dto</param>
        /// <returns></returns>
        OperationResult Insert(params PromotionPlanDto[] dtos);


        /// <summary>
        /// 编辑 推广计划
        /// </summary>
        /// <param name="dtos">推广计划dto</param>
        /// <returns></returns>
        OperationResult Update(params PromotionPlanDto[] dtos);

        /// <summary>
        /// 删除 推广计划
        /// </summary>
        /// <param name="ids">要删除的主键数组</param>
        /// <returns></returns>
        OperationResult Delete(params Guid[] ids);
    }
}
